package org.ljy.testdemo.exception;

import org.ljy.testdemo.common.Result;

/**
 * 自定义异常（捕获控制层和服务层）
 */

public class ApplicationException extends RuntimeException{

    //自定义的错误结果(里面包含错误码和错误信息)
    protected Result errorResult;


    //用于throw new ApplicationException(Result.fail("我走的是构造方法"))这种情况
    public Result getErrorResult() {
        return errorResult;
    }

    /**
     * 构造方法  用于填充信息
     */

    public ApplicationException(Result errorResult) {
        super(errorResult.getMessage());
        this.errorResult = errorResult;
    }

    public ApplicationException(String message) {
        super(message);
    }

    public ApplicationException(Throwable cause) {
        super(cause);
    }

    public ApplicationException(String message, Throwable cause) {
        super(message, cause);
    }
}